<?php

// 后台菜单
Route::get('menus', 'MenuController@index')->aliasPermission("获取后台菜单");

Route::get('login/config', 'ConfigController@login')->aliasPermission('登录页面配置');

Route::get('info', 'InfoController@info')->name('info')->aliasPermission('管理员.个人信息');
Route::match(['put', 'patch'], 'info', 'InfoController@update')->name('info.update')->aliasPermission('管理员.编辑个人信息');
Route::put('info/password', 'InfoController@updatePassword')->name('info.password.update')->aliasPermission('管理员.修改密码');

Route::post('permissions/refresh', 'PermissionController@refreshPermissionByRoute')->aliasPermission("权限管理.权限列表.刷新权限", true);
Route::get('permissions', 'PermissionController@index')->aliasPermission("权限管理.权限列表.列表", true, 'index');
Route::put('permissions/{permission}', 'PermissionController@update')->aliasPermission("权限管理.权限列表.编辑", true);
Route::apiResource('roles', 'RoleController')->aliasPermissions([
    'index' => ['权限管理.角色列表.列表', true, 'index'],
    'store' => ['权限管理.角色列表.添加', true],
    'show' => ['权限管理.角色列表.角色信息', true],
    'update' => ['权限管理.角色列表.更新', true],
    'destroy' => ['权限管理.角色列表.删除', true],
]);

Route::apiResource('/admins', 'AdminController')->aliasPermissions([
    'index' => ['权限管理.管理员.浏览', true, 'index'],
    'show' => ['权限管理.管理员.信息', true],
    'store' => ['权限管理.管理员.添加', true],
    'update' => ['权限管理.管理员.编辑', true],
    'destroy' => ['权限管理.管理员.删除', true],
]);
Route::put('admins/assign/roles/{admin}', 'AdminController@assignRoles')->aliasPermission("权限管理.管理员.分配角色", true);
Route::put('admins/assign/permissions/{admin}', 'AdminController@assignPermissions')->aliasPermission("权限管理.管理员.分配权限", true);
